package com.joker.demo.admin.domain.vo;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.io.Serializable;
import java.util.Date;
import java.util.List;

/**
 * 任务一天内执行情况VO
 *
 * @author : feixiang.li
 * @since : 2025-07-26 19:38
 */
@Data
public class JobDailyExecutionVO implements Serializable {

    /**
     * 任务ID
     */
    private Integer jobId;

    /**
     * 任务名称
     */
    private String jobName;

    /**
     * 应用名称
     */
    private String groupName;

    /**
     * 查询日期
     */
    private String queryDate;

    /**
     * 总执行次数
     */
    private Integer totalExecutions;

    /**
     * 成功次数
     */
    private Integer successCount;

    /**
     * 失败次数
     */
    private Integer failureCount;

    /**
     * 执行中次数
     */
    private Integer runningCount;

    /**
     * 平均执行时间（毫秒）
     */
    private Long averageExecutionTime;

    /**
     * 最长执行时间（毫秒）
     */
    private Long maxExecutionTime;

    /**
     * 最短执行时间（毫秒）
     */
    private Long minExecutionTime;

    /**
     * 执行详情列表
     */
    private List<JobExecutionDetailVO> executionDetails;

    /**
     * 执行器统计信息
     */
    private List<JobExecutorStatisticsVO> executorStatistics;

    /**
     * 时间分布统计（按小时）
     */
    private List<JobHourlyStatisticsVO> hourlyStatistics;
}


